﻿using System;
using System.Collections;
using System.Net.Http.Headers;

namespace 集合ArrayList
{
	class Program
	{
		static void Main(string[] args)
		{
			//创建了集合对象
			ArrayList list = new ArrayList();
			/* 集合：很多数据的几个
			 * 数组：长度不可变，类型单一
			 * 集合的好处：长度可变，类型随意
			 */
			list.Add(1);
			list.Add(3.13);
			list.Add('a');
			list.Add(new int[] { 1, 3, 4, 6, 8, 4, 1 });
			Persom p = new Persom();
			list.Add(p);
			list.Add(list);
			//我们将一个对象输出到控制台 默认情况下打印的就是这个对象所在类的命名空间

			//添加集合用AddRange
			list.AddRange(new int[] { 1, 3, 4, 6, 8, 4, 1 });
			list.AddRange(list);
			//list.Clear(); 清空所有元素
			//list.Remove(1); 删除单个元素，写谁删谁
			//list.RemoveAt(0);根据下标删除元素
			//list.RemoveRange(0, 3); 根据下标删去一定范围的元素
			//list.Sort(); 升序排列
			//list.Reverse(); 反转
			//list.Insert(1, "插入"); 根据索引插入
			//list.InsertRange(0, new string[] { "啊啊的", "Cas" }); 插入元素数组
			//bool b = list.Contains(1); 判断是否包含某个指定的元素

			for (int i = 0; i < list.Count; i++)
			{
				//if(list[i] is Persom)
				//{
				//	((Persom)list[i]).say();
				//}
				//else if(list[i] is int[])
				//{
				//	for (int j = 0; j < ((int[])list[i]).Length; j++)
				//	{
				//		Console.WriteLine(((int[])list[i])[j]);
				//	}
				//}
				//else
				//{
				//	Console.WriteLine(list[i]);
				//}
				Console.WriteLine(list[i]);
			}
		}
	}
	class Persom
	{
		public void say()
		{
			Console.WriteLine("11");
		}
	}
}
